Termination Proof Script
Consider the TRS R consisting of the rewrite rules
|
| 1: |
|
double(0) |
→ 0 |
| 2: |
|
double(s(x)) |
→ s(s(double(x))) |
| 3: |
|
half(0) |
→ 0 |
| 4: |
|
half(s(0)) |
→ 0 |
| 5: |
|
half(s(s(x))) |
→ s(half(x)) |
| 6: |
|
x - 0 |
→ x |
| 7: |
|
s(x) - s(y) |
→ x - y |
| 8: |
|
if(0,y,z) |
→ y |
| 9: |
|
if(s(x),y,z) |
→ z |
| 10: |
|
half(double(x)) |
→ x |
|
There are 3 dependency pairs:
|
| 11: |
|
DOUBLE(s(x)) |
→ DOUBLE(x) |
| 12: |
|
HALF(s(s(x))) |
→ HALF(x) |
| 13: |
|
s(x) -# s(y) |
→ x -# y |
|
The approximated dependency graph contains 3 SCCs:
{13},
{11}
and {12}.
-
Consider the SCC {13}.
There are no usable rules.
By taking the AF π with
π(-#) = 1 together with
the lexicographic path order with
empty precedence,
rule 13
is strictly decreasing.
-
Consider the SCC {11}.
There are no usable rules.
By taking the AF π with
π(DOUBLE) = 1 together with
the lexicographic path order with
empty precedence,
rule 11
is strictly decreasing.
-
Consider the SCC {12}.
There are no usable rules.
By taking the AF π with
π(HALF) = 1 together with
the lexicographic path order with
empty precedence,
rule 12
is strictly decreasing.
Hence the TRS is terminating.
Tyrolean Termination Tool (0.01 seconds)
--- May 3, 2006